From: Giovanni Campagna Date: Sat, 9 Mar 2013 23:26:02 +0000 (+0100) Subject: Wanda: so long GNOME 2, and thanks for all the fish. X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4513 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=7766a91e8c030ed91dc360993a807ac8e31f21f8;p=gnome-shell.git Wanda: so long GNOME 2, and thanks for all the fish. gnome-panel is going away in 3.8, so we can't rely on it to provide our friendly and reliable companion. But no regret, because we can ship it ourselves, and at the same time remove some unnecessary configuration. https://bugzilla.gnome.org/show_bug.cgi?id=695526 --- diff --git a/data/Makefile.am b/data/Makefile.am index ef3b3b48b..f555d9a84 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -1,3 +1,6 @@ +wandadir = $(pkgdatadir) +dist_wanda_DATA = wanda.png + desktopdir=$(datadir)/applications desktop_DATA = gnome-shell.desktop gnome-shell-extension-prefs.desktop diff --git a/data/wanda.png b/data/wanda.png new file mode 100644 index 000000000..d56a4d4a7 Binary files /dev/null and b/data/wanda.png differ diff --git a/js/ui/wanda.js b/js/ui/wanda.js index 98b964c40..3d5d56898 100644 --- a/js/ui/wanda.js +++ b/js/ui/wanda.js @@ -11,12 +11,14 @@ const Layout = imports.ui.layout; const Main = imports.ui.main; const Panel = imports.ui.panel; -// we could make these gsettings const FISH_NAME = 'wanda'; +const FISH_FILENAME = 'wanda.png'; const FISH_SPEED = 300; const FISH_COMMAND = 'fortune'; +// The size of an individual frame in the animation +const FISH_HEIGHT = 22; +const FISH_WIDTH = 36; -const GNOME_PANEL_PIXMAPDIR = '../gnome-panel/fish'; const FISH_GROUP = 'Fish Animation'; const MAGIC_FISH_KEY = 'free the fish'; @@ -26,33 +28,16 @@ const WandaIcon = new Lang.Class({ Extends: IconGrid.BaseIcon, _init : function(fish, label, params) { - this._fish = fish; - let file = GLib.build_filenamev([global.datadir, GNOME_PANEL_PIXMAPDIR, fish + '.fish']); - - if (GLib.file_test(file, GLib.FileTest.EXISTS)) { - this._keyfile = new GLib.KeyFile(); - this._keyfile.load_from_file(file, GLib.KeyFileFlags.NONE); - - this._imageFile = GLib.build_filenamev([global.datadir, GNOME_PANEL_PIXMAPDIR, - this._keyfile.get_string(FISH_GROUP, 'image')]); - - let tmpPixbuf = GdkPixbuf.Pixbuf.new_from_file(this._imageFile); + this.parent(label, params); - this._imgHeight = tmpPixbuf.height; - this._imgWidth = tmpPixbuf.width / this._keyfile.get_integer(FISH_GROUP, 'frames'); - } else { - this._imageFile = null; - } + this._fish = fish; + this._imageFile = GLib.build_filenamev([global.datadir, fish + '.png']); - this.parent(label, params); + this._imgHeight = FISH_HEIGHT; + this._imgWidth = FISH_WIDTH; }, createIcon: function(iconSize) { - if (!this._imageFile) { - return new St.Icon({ icon_name: 'face-smile', - icon_size: iconSize }); - } - this._animations = new Panel.Animation(this._imageFile, this._imgWidth, this._imgHeight, FISH_SPEED); this._animations.play(); return this._animations.actor;